This invention relates to processing print jobs. More particularly, the invention relates to a flexible way of processing print jobs using print emulators instead of printers and using the resulting data, control and status information for a variety of purposes.
The concepts of a virtual printer and a printer emulator are widely known in the art. A virtual printer is the subject of U.S. Pat. No. 6,266,150; U.S. patent application Ser. No. 09/139,043 filed 24 Aug. 1998 and Ser. No. 09/277,056 filed 26 Mar. 1999; and a publication in the IBM Technical Disclosure Bulletin for 1 Apr. 2001, which are hereby incorporated hereinto by reference and to which the interested reader is referred. Such a virtual printer provides a flexible way to drive heterogeneous devices by integrating a printer emulator into the data flow. The emulator produces a simple intermediate data format that is easily handled by most output devices. In this way, only the control information handling and relatively simple data formatting must be designed to support each new output device.
There are many different printer emulators known in the art. They range from standalone PostScript interpreters that produce electronic output instead of driving a print engine, to printer development systems used internally by printer manufacturers that feature fully functional printer controllers with print head mechanisms replaced by hardware simulators.
In some applications, notably the OCE TrueProof (R) system, printer emulators are used to preview print jobs as they would appear on an actual printer. In this system, the printer emulator runs on a separate computer and is indistinguishable from a real printer to the print server.
The IBM Virtual Printer referenced above offers a greater degree of integration with the server and a wider variety of options for handling the printer output. However, it is tuned for a particular purpose of driving an output device, so its architecture is narrowly defined to optimize this function.
There is a need to provide a flexible system that would build on the virtual printer concept and provide a wider variety of system configurations and output handling options.